home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
8bitfiles.net/archives
/
archives.tar
/
archives
/
genie-commodore-file-library
/
C64Toolkit
/
DOSIT54.ARC
/
_FAST FORMAT
(
.txt
)
< prev
next >
Wrap
Commodore BASIC
|
2019-04-13
|
3KB
|
80 lines
0 CLR
100 REM DOSIT FAST FORMATTER BY JAMES PAUL AMYX OCT9,1993
110 :
120 REM ** A$ MUST BE FIRST VARIABLE USED IN PROGRAM **
130 A$="":C0$=CHR$(0):CR$=CHR$(13):VA=PEEK(45)+256*PEEK(46)
140 POKE(VA+2),255:POKE(VA+3),0:POKE(VA+4),192
150 PRINT"--SETTING UP. . ."
160 FORAD=49176TO49375:READX:POKEAD,X:NEXTAD
170 POKE53280,0:POKE53281,0
180 PRINT"[147][155]";CHR$(14)
190 PRINT"***********[211][205][193][210][212][160][198][207][210][205][193][212] [214]1.0***********"
200 PRINTCR$SPC(11)"1541 FAST FORMAT"CR$SPC(12)"WITHOUT 'BUMP'"
210 PRINTCR$SPC(11)"BY [210]USTIN [193]MBROSE"
220 PRINT"[197][206][212][197][210]: DISKETTE NAME,ID"
230 PRINT"(NAME CAN HAVE MAX OF 16 CHARS,"
240 PRINT" I.D. MUST BE 2 CHARS LONG)";CR$
250 DN$="":ID$="":INPUTDN$,ID$:IF(DN$="")OR(ID$="")THENEND
260 LN=LEN(DN$):IFLN>16THENPRINTCR$"--NAME TOO LONG.":GOTO220
270 IFLEN(ID$)<>2THENPRINTCR$"--I.D. NOT 2 CHARACTERS LONG.":GOTO220
280 CS$="N0:"+DN$+CHR$(44)+ID$+CHR$(13):CL=LEN(CS$):POKE49175,CL
290 FORI1=1TOCL:POKE49151+I1,ASC(MID$(CS$,I1,1)+C0$):NEXTI1
300 :
310 CLOSE15:OPEN15,8,15
320 PRINT#15,"M-R"CHR$(34);C0$:GET#15,T$:IFASC(T$+C0$)THEN380
330 PRINTCR$"**[201]NTERNAL TRACK COUNTER OF DRIVE NEEDS"
340 PRINT" TO BE INITIALIZED."
350 PRINT" [208]LEASE INSERT [193][206][217] FORMATTED DISKETTE."
360 PRINT" [212]HE DISKETTE WILL NOT BE AFFECTED**":GOSUB630
370 PRINT#15,"I0":GOSUB700:GOTO320
380 PRINTCR$"**[208]LACE DISKETTE TO BE FORMATTED INTO"
390 PRINT" DRIVE**":GOSUB630
400 PRINT#15,"M-R"CHR$(30);C0$:GET#15,WP$:IFASC(WP$+C0$)AND16THEN430
410 PRINTCR$"--WRITE PROTECT IS ON."
420 PRINT"--REPLACE DISKETTE.":GOSUB630:GOTO400
430 PRINTCR$"**[208]LEASE RE-CHECK THAT DISKETTE IN"
440 PRINT" DRIVE SHOULD BE FORMATTED."
450 PRINT" [193]LL DATA WILL BE DESTROYED!**"
460 PRINTCR$SPC(7)"[[200][201][212] [211][208][193][195][197] [194][193][210] [212][207] [198][207][210][205][193][212]":GOSUB640
470 PRINT#15,"M-R"CHR$(34);C0$:GET#15,T$:IFASC(T$+C0$)=0THEN330
480 PRINT#15,"M-R"CHR$(30);C0$:GET#15,WP$:IF(ASC(WP$+C0$)AND16)=0THEN410
490 PRINTCR$"--FORMATTING '"DN$","ID$"' . . ."
500 PRINT#15,"M-W"CHR$(28);C0$;CHR$(1);C0$
510 OPEN2,8,2,"#1":PRINT#15,"B-P";2;0:PRINT#2,A$;:CLOSE2
520 PRINT#15,"M-E"CHR$(28);CHR$(4):GOSUB700
530 PRINTCR$"--DONE. [I.S. GAPS: ";
540 PRINT#15,"M-R"CHR$(5)CHR$(6)CHR$(4)
550 FORI1=0TO3:GET#15,G$:G(I1)=ASC(G$+C0$):NEXTI1
560 FORI1=3TO0STEP-1:PRINTG(I1);:NEXTI1:PRINT"]"
570 PRINTSPC(10)"[# OF RE-TRIES:";
580 PRINT#15,"M-R"CHR$(32)CHR$(6):GET#15,ER$:ER=ASC(ER$+C0$)
590 PRINT10-ER"]"
600 CLOSE15:PRINTCR$"**[198]ORMAT ANOTHER?**":GOSUB630:GOTO220
610 :
620 :
630 PRINTCR$SPC(7)"[[200][201][212] [211][208][193][195][197] [194][193][210] [212][207] [195][207][206][212][201][206][213][197]"
640 PRINTSPC(11)"[207][210] '[197]' [212][207] [197][216][201][212]]"
650 POKE198,0
651 IFI$="E"THENPRINT"INSERT DOSIT DISK AND PRESS ANY KEY[145]":GETA$:IFA$=""THEN651
660 GETI$:IFI$="E"THENCLOSE15:LOAD"DOSBOOT",8,1
670 IFI$<>" "THEN660
680 RETURN
690 :
700 INPUT#15,E1$,E2$,E3$,E4$:IFE1$="00"THENRETURN
710 PRINTCR$"[196][210][201][214][197] [197][210][210][207][210] #"E1$":"
720 PRINT"'"E2$"' [212][210][193][195][203]#"E3$" [211][197][195][212][207][210]#"E4$:CLOSE15:END
730 :
740 DATA1,4,10,0,174,23,4,134,163,189,255,3,157,255,1,202
750 DATA208,247,160,70,162,193,169,132,32,93,4,32,48,6,160,13
760 DATA162,238,169,61,32,93,4,32,48,6,160,54,162,252,169,174
770 DATA32,93,4,169,76,141,0,6,169,123,141,1,6,169,4,32
780 DATA210,200,76,64,238,140,105,4,142,106,4,141,3,6,162,0
790 DATA189,255,255,157,48,6,232,200,204,3,6,208,243,169,96,157
800 DATA48,6,96,165,81,16,19,169,6,141,33,6,169,15,141,34
810 DATA6,169,10,141,32,6,169,1,133,81,160,0,209,50,240,13
820 DATA201,2,208,6,174,38,6,142,4,6,76,251,250,201,1,240
830 DATA52,165,68,74,74,74,74,74,170,189,24,4,24,109,4,6
840 DATA157,5,6,141,38,6,32,48,6,173,12,28,41,31,9,192
850 DATA141,12,28,169,255,141,3,28,169,85,141,1,28,162,2,32
860 DATA36,254,76,177,252,76,0,251